package main

import "fmt"

// recover()必须搭配defer使用
// defer 一定要在可能引发panic的语句之前定义.
func funcA() {
	fmt.Println("a")
}
func funcB() {
	// 刚刚达赖数据库连接
	defer func() {
		err := recover()
		fmt.Println(err)
		// if err != nil {

		// }
		fmt.Println("释放数据库连接")
	}()
	panic("出现了严重的错误") // 程序奔溃推出
	fmt.Println("b")
}
func funcC() {
	fmt.Println("c")
}
func main() {
	funcA()
	funcB()
	funcC()
}
